RDS for PostgreSQL で拡張機能を使用しているか確認するには
困っていた内容
RDS for PostgreSQL でメジャーバージョンのアップグレードを計画しているため、拡張機能を使用しているか確認したいです。
確認方法を教えてください。
どう対応すればいいの?
RDS for PostgreSQL で現在インストールされている拡張機能を一覧表示するには 該当の DB インスタンスへ接続し、以下のコマンドを実行します。
SELECT * FROM pg_extension;
- 以下の2点を比較し、拡張機能を使用しているかご確認ください
- ご利用中の PostgreSQL バージョンのデフォルトの拡張機能
- 対象 DB インスタンスで利用している拡張機能
参考情報
以下は RDS for PostgreSQL を起動し、デフォルトの拡張機能のままコマンドを実行した結果の例です。
※2021年6月15日現在 の情報となります
PostgreSQL 9.6.21 のデフォルト設定
SELECT * FROM pg_extension; { "extname": "plpgsql", "extowner": 10, "extnamespace": 11, "extrelocatable": false, "extversion": "1.0", "extconfig": null, "extcondition": null }
PostgreSQL 12.6 のデフォルト設定
SELECT * FROM pg_extension; { "oid": xxxxx, "extname": "plpgsql", "extowner": 10, "extnamespace": 11, "extrelocatable": false, "extversion": "1.0", "extconfig": null, "extcondition": null }
PostgreSQL 13.2 のデフォルト設定
SELECT * FROM pg_extension; { "oid": xxxxx, "extname": "plpgsql", "extowner": 10, "extnamespace": 11, "extrelocatable": false, "extversion": "1.0", "extconfig": null, "extcondition": null }
現在、AWS からアップグレードが促されている PostgreSQL 9.6 系と、アップグレード先の候補である 12 系、13 系のデフォルト設定の例を掲載しました。 12.6、13.2 では oid という項目が追加されていますが、その他のデフォルトの項目に変更はありませんでした。
参考資料
Amazon RDS の PostgreSQL DB エンジンのアップグレード - Amazon Relational Database Service